草庐IT

Java AES 加盐加密

全部标签

c# - 使用 RSA 公钥解密使用 RSA 私钥加密的字符串

我知道我可能得到的主要答案是你到底为什么要这么做?!不幸的是,尽管我抗议,但我还是不得不这样做,尽管我知道这毫无意义。我有一些用.Net编写的函数,可以使用私钥解密,使用公钥加密。我还对RSA进行了签名和验证,并且对我认为这一切的工作原理有一个合理的理解。我现在收到一个使用私钥进行RSA加密的值,我应该通过使用公钥解密来派生一个可用值。我似乎不知道该怎么做。我是白痴吗?这是正常的事情吗?给我发送值的人告诉我,这在PHP中没有问题。我不知道也没有使用过PHP。我找不到用我知道的任何主要语言(即C++、Java、C#)执行此操作的库。我正在使用的服务器使用.Net。我希望有人能帮助我。如果

c# - 使用 HMAC-SHA1 加密创建 OAuth 签名返回 HTTP 401

问题我需要对需要OAuth加密的API进行身份验证。我的方向是正确的,但我确信我的签名基本字符串有问题。由于HMACSHA1哈希基于key和BaseString,因此我得到了错误的oauth_signature。OAuthSigningProcess到目前为止我已经能够收集到所有必需的数据,其中包括:ConsumerKeyConsumerSecretAccesTokenAccesSecretSha1HasedValue(BasedonKeyandMessage,whereMessageisthesignatureBasestring)SignatureBaseString问题由于签名无

c# - .NET 中的最小消息大小公钥加密

我想使用公钥加密系统将非常少的数据(准确地说是15个字节)加密成尽可能短(最好不超过16个字节)的消息。不幸的是,标准公钥系统RSA会生成与其key一样大的消息,即大约100字节,具体取决于key大小。更困难的是,我只能使用.NET框架库,即没有第三方。我在维基百科上阅读了一些关于椭圆曲线密码学的内容,那里的文字似乎暗示那里的key长度通常比RSAkey短得多。这也可以转化为短消息吗?.NETECDiffieHellmanCng类是否可用于解密/加密消息?它似乎具有与RSA或对称密码不同的类结构。 最佳答案 您可以使用ECDiffi

c# - RSACryptoServiceProvider(.NET 的 RSA)可以使用 SHA256 代替 SHA1 进行加密(不签名)吗?

加密时,RSACryptoServiceProvider(或.NET提供的任何其他RSA加密器)能否使用SHA256而不是SHA1?SHA1似乎是硬编码的,无法更改。例如,RSACryptoServiceProvider.SignatureAlgorithm被硬编码为返回“http://www.w3.org/2000/09/xmldsig#rsa-sha1”。如果没有办法让RSACryptoServiceProvider使用SHA256,有什么替代方案?更新以下代码运行良好,但我想将OAEPWithSHA1AndMGF1Padding更改为OAEPWithSHA256AndMGF1Pa

c# - .NET 私​​钥 Rsa 加密

我需要使用RSA1.5算法加密字符串。我已获得私钥。但是,我终生无法弄清楚如何将此key添加到类(class)中。看起来key需要是RSAParameter结构类型。然而,这需要一组我没有给出的值,例如模数、指数、P、Q等。我所拥有的只是私钥。谁能帮忙? 最佳答案 你应该知道BouncycastleC#library.特别是有两个非常有用的类:Org.BouncyCaSTLe.OpenSsl.PemReader可以将您拥有的openssl样式key转换为bouncycaSTLekey对象,以及Org.BouncyCaSTLe.Sec

c# - 帮我 XOR 加密

我用C#编写了这段代码,用key加密字符串:privatestaticintBin2Dec(stringnum){int_num=0;for(inti=0;i_str.Length)_key=_key.Substring(0,_str.Length);for(inti=0;i问题是当我想用这段代码解密加密文本时总是出错:stringenc_text=ENCRYPT.XORENC("abc","a");//enc_text="♥☻"stringdec_text=ENCRYPT.XORENC(enc_text,"a");//ArgumentOutOfRangeException有什么线索吗

c# - 加密密码

我读过一些建议散列密码并将其存储在数据库中的问题。当有人登录时,您将提供的密码与您存储的内容进行哈希处理。我不明白的是这是如何工作的?两个字符串可以散列为相同的值-不太可能但绝对可能有人可以帮帮我吗?编辑:谁能给出碰撞可能性的统计数据? 最佳答案 您不应存储未加密的密码,因为您的数据库管理员不应该访问客户密码。对密码进行哈希处理可以防止数据库管理员看到密码。发生冲突的可能性非常小,这不是问题,因为这不会显着增加有人在您锁定帐户之前试图暴力破解客户密码获得匹配的可能性。PS在散列之前对密码进行加盐也是一种很好的做法,这样如果黑客以某种

c# - 使用具有模糊容忍算法的笔划作为加密 key

如何使用模糊容错来加密/解密?我希望能够使用InkCanvas上的Stroke作为我加密的key,但是当再次解密时,用户不必绘制完全相同的符号,只是相似。这可以在.NETC#中完成吗?---更新(9月9日)---我理想中想要的是一种加密算法,它可以接受基于某些基本key和定义允许差异的函数的特定key范围内的任何key..我在本地进行所有加密/解密,因此我不需要安全地通过线路发送任何内容。而且我不想存储用于加密的key,所以我没有任何可比较的东西。我可以想出一些方法来为每个相似的笔画生成相同的键,但如果想要接受任何类型的符号(不仅是字母),这并不容易。另一种选择是加密key是否可以通过

c# - 双向文件夹同步加密以保护我的 Dropbox 数据

我想写一个小的.NET脚本/工具,它至少大部分与SecretSync相同。或BoxCryptor,但没有将加密key存储在公司的网络服务器上。首先,这听起来很简单:您有两个文件夹——“解密”文件夹和“加密”文件夹。在这两个文件夹上都有一个FileSystemWatcher因此,当文件发生更改时,该工具会收到通知。如果“解密”文件夹中的文件发生更改,它会加密该文件并将其写入“加密”文件夹。如果“加密”文件夹中的文件发生更改,它会解密该文件并将其写入“解密”文件夹。目前没问题。但是,如果用户直接从“已解密”文件夹运行应用程序(例如KeePass),会发生什么情况?同步和加密过程现在会遇到问

c# - 为什么我的字节在加密算法的这个 C# 端口的第四轮不同?

我正在尝试将C++代码移植到C#并且在大多数情况下它都可以正常工作,但仅适用于循环的前3轮。在第四轮,输入block的字节开始不同,我不明白为什么。如果我们假设C++版本是正确的实现,为什么C#代码在第四轮给出不同的结果。下面是我的结果和代码(C++/CLR和C#的控制台应用程序)我认为输入block在传递给AES之前在每一轮中创建的方式有所不同(在C++中,有一种方法可以转换为基数256,to_base_256和from_base_256)但在C#中,我将基本256字节数组直接转换为BigInteger,然后再转换回字节数组。我只是不知道为什么每个人都会在前3轮中产生相同的输入blo